Skip to content

pahole: Correctly install libdwarfes shared libraries into /usr/lib #3229

Merged
merged 1 commit into from
Apr 16, 2025

Conversation

pmenzel
Copy link
Collaborator

@pmenzel pmenzel commented Apr 16, 2025

No description provided.

Currently, [the shared libraries are wrongly installed into
`/usr/usr/lib`][1]:

    $ pahole --version
    pahole: error while loading shared libraries: libdwarves_emit.so.1: cannot open shared object file: No such file or directory
    $ fakeroot bee query pahole-1.30-0.x86_64
    […]
    /usr/usr/lib
    /usr/usr/lib/libdwarves_reorganize.so//libdwarves_reorganize.so.1
    /usr/usr/lib/libdwarves_reorganize.so.1//libdwarves_reorganize.so.1.0.0
    /usr/usr/lib/libdwarves_reorganize.so.1.0.0
    /usr/usr/lib/libdwarves_emit.so//libdwarves_emit.so.1
    /usr/usr/lib/libdwarves_emit.so.1//libdwarves_emit.so.1.0.0
    /usr/usr/lib/libdwarves_emit.so.1.0.0
    /usr/usr/lib/libdwarves.so//libdwarves.so.1
    /usr/usr/lib/libdwarves.so.1//libdwarves.so.1.0.0
    /usr/usr/lib/libdwarves.so.1.0.0
    […]

The problem is, that `CMAKE_INSTALL_LIBDIR` is treated to be
subdirectory of the install prefix and *not* an absolute path:

    $ more CMakeLists.txt
    […]
    if (NOT DEFINED LIB_INSTALL_DIR)
        set(LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
    endif()
    […]

Explicity set `LIB_INSTALL_DIR` to make the if condition false.

    $ fakeroot bee query pahole-1.30-1.x86_64
    […]
    /usr/lib/libdwarves_reorganize.so//libdwarves_reorganize.so.1
    /usr/lib/libdwarves_reorganize.so.1//libdwarves_reorganize.so.1.0.0
    /usr/lib/libdwarves_reorganize.so.1.0.0
    /usr/lib/libdwarves_emit.so//libdwarves_emit.so.1
    /usr/lib/libdwarves_emit.so.1//libdwarves_emit.so.1.0.0
    /usr/lib/libdwarves_emit.so.1.0.0
    /usr/lib/libdwarves.so//libdwarves.so.1
    /usr/lib/libdwarves.so.1//libdwarves.so.1.0.0
    /usr/lib/libdwarves.so.1.0.0
    […]
    $ pahole --version
    v1.30

Upstream report: https://lore.kernel.org/all/9fb4f7ba-0de1-4f75-9bd2-66212ca8cd86@molgen.mpg.de/

Increment revision to 1.

[1]: #3227 (comment)
@pmenzel pmenzel force-pushed the pahole-install-libdwarves-so-correctly branch from 78c5bc2 to a7f386f Compare April 16, 2025 20:36
@pmenzel pmenzel merged commit 4ff541b into master Apr 16, 2025
Sign in to join this conversation on GitHub.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant